/**
 * Copyright &copy; 2012-2016 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved.
 */
package com.thinkgem.jeesite.modules.publish.entity;

import org.hibernate.validator.constraints.Length;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;

import com.thinkgem.jeesite.common.persistence.DataEntity;

/**
 * 预约单Entity
 * @author alex
 * @version 2017-05-04
 */
public class PublishAppointHeader extends DataEntity<PublishAppointHeader> {
	
	private static final long serialVersionUID = 1L;
	private String appointNum;		// 预约号
	private String publishBillId;		// 采购单ID
	private String publishBillOrder;		// 采购单号
	private String supplierId;		// 供应商ID
	private String supplierName;		// 供应商名称
	private String skuNum;		// SKU数
	private String boxNum;		// 预约箱数
	private String appointSum;		// 预约总数
	private String platform;		// 收货月台
	private Date arrivalStart;		// 到货开始时间
	private Date arrivalEnd;		// 到货结束时间
	private String appointContact;		// 预约联系人
	private String appointMobile;		// 预约联系手机
	private String appointPhone;		// 预约联系电话
	private String transportCompany;		// 运输公司
	private String transportContact;		// 运输联系人
	private String transportPhone;		// 运输联系电话
	private String status;		// 状态
	private String auditBy;		// 审核人ID
	private String auditName;		// 审核人
	private Date auditDate;		// 审核时间
	
	public PublishAppointHeader() {
		super();
	}

	public PublishAppointHeader(String id){
		super(id);
	}

	@Length(min=0, max=30, message="预约号长度必须介于 0 和 30 之间")
	public String getAppointNum() {
		return appointNum;
	}

	public void setAppointNum(String appointNum) {
		this.appointNum = appointNum;
	}
	
	@Length(min=0, max=30, message="采购单ID长度必须介于 0 和 30 之间")
	public String getPublishBillId() {
		return publishBillId;
	}

	public void setPublishBillId(String publishBillId) {
		this.publishBillId = publishBillId;
	}
	
	@Length(min=0, max=30, message="采购单号长度必须介于 0 和 30 之间")
	public String getPublishBillOrder() {
		return publishBillOrder;
	}

	public void setPublishBillOrder(String publishBillOrder) {
		this.publishBillOrder = publishBillOrder;
	}
	
	@Length(min=0, max=30, message="供应商ID长度必须介于 0 和 30 之间")
	public String getSupplierId() {
		return supplierId;
	}

	public void setSupplierId(String supplierId) {
		this.supplierId = supplierId;
	}
	
	@Length(min=0, max=50, message="供应商名称长度必须介于 0 和 50 之间")
	public String getSupplierName() {
		return supplierName;
	}

	public void setSupplierName(String supplierName) {
		this.supplierName = supplierName;
	}
	
	@Length(min=0, max=11, message="SKU数长度必须介于 0 和 11 之间")
	public String getSkuNum() {
		return skuNum;
	}

	public void setSkuNum(String skuNum) {
		this.skuNum = skuNum;
	}
	
	@Length(min=0, max=11, message="预约箱数长度必须介于 0 和 11 之间")
	public String getBoxNum() {
		return boxNum;
	}

	public void setBoxNum(String boxNum) {
		this.boxNum = boxNum;
	}
	
	@Length(min=0, max=11, message="预约总数长度必须介于 0 和 11 之间")
	public String getAppointSum() {
		return appointSum;
	}

	public void setAppointSum(String appointSum) {
		this.appointSum = appointSum;
	}
	
	@Length(min=0, max=30, message="收货月台长度必须介于 0 和 30 之间")
	public String getPlatform() {
		return platform;
	}

	public void setPlatform(String platform) {
		this.platform = platform;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getArrivalStart() {
		return arrivalStart;
	}

	public void setArrivalStart(Date arrivalStart) {
		this.arrivalStart = arrivalStart;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getArrivalEnd() {
		return arrivalEnd;
	}

	public void setArrivalEnd(Date arrivalEnd) {
		this.arrivalEnd = arrivalEnd;
	}
	
	@Length(min=0, max=30, message="预约联系人长度必须介于 0 和 30 之间")
	public String getAppointContact() {
		return appointContact;
	}

	public void setAppointContact(String appointContact) {
		this.appointContact = appointContact;
	}
	
	@Length(min=0, max=30, message="预约联系手机长度必须介于 0 和 30 之间")
	public String getAppointMobile() {
		return appointMobile;
	}

	public void setAppointMobile(String appointMobile) {
		this.appointMobile = appointMobile;
	}
	
	@Length(min=0, max=30, message="预约联系电话长度必须介于 0 和 30 之间")
	public String getAppointPhone() {
		return appointPhone;
	}

	public void setAppointPhone(String appointPhone) {
		this.appointPhone = appointPhone;
	}
	
	@Length(min=0, max=30, message="运输公司长度必须介于 0 和 30 之间")
	public String getTransportCompany() {
		return transportCompany;
	}

	public void setTransportCompany(String transportCompany) {
		this.transportCompany = transportCompany;
	}
	
	@Length(min=0, max=30, message="运输联系人长度必须介于 0 和 30 之间")
	public String getTransportContact() {
		return transportContact;
	}

	public void setTransportContact(String transportContact) {
		this.transportContact = transportContact;
	}
	
	@Length(min=0, max=30, message="运输联系电话长度必须介于 0 和 30 之间")
	public String getTransportPhone() {
		return transportPhone;
	}

	public void setTransportPhone(String transportPhone) {
		this.transportPhone = transportPhone;
	}
	
	@Length(min=0, max=1, message="状态长度必须介于 0 和 1 之间")
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	@Length(min=0, max=30, message="审核人ID长度必须介于 0 和 30 之间")
	public String getAuditBy() {
		return auditBy;
	}

	public void setAuditBy(String auditBy) {
		this.auditBy = auditBy;
	}
	
	@Length(min=0, max=30, message="审核人长度必须介于 0 和 30 之间")
	public String getAuditName() {
		return auditName;
	}

	public void setAuditName(String auditName) {
		this.auditName = auditName;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getAuditDate() {
		return auditDate;
	}

	public void setAuditDate(Date auditDate) {
		this.auditDate = auditDate;
	}
	
}